home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 8: LINUX Games / Linux Cubed Series 8 - LINUX Games.iso / games / muds / tf-3.000 / tf-3 / tf3.0a21 / README < prev   
Text File  |  1993-09-28  |  7KB  |  162 lines

  1.  
  2.                        INSTALLING TINYFUGUE
  3.  
  4. Installing TinyFugue is quite easy on most systems:  simply type
  5. "Build" in the directory you unpacked.  The Build script will
  6. attempt to figure out everything it needs to know about your system
  7. and install all files in their proper location.  The rest of this
  8. file describes what to do when Build guesses incorrectly, or you
  9. want to change some of the default installation options.
  10.  
  11. Build has two other options you may use after you have installed tf:
  12.  
  13.  Build uninstall   Remove tf, Connector, help file & index, and library.
  14.  Build clean       Remove object files and other junk from source directory.
  15.  
  16.  
  17. System types
  18. ------------
  19.  
  20. If Build fails because it guessed incorrectly about your system, you
  21. may need to edit LIBS, FLAGS, or some other lines in the Config file.
  22.  
  23. Some possible system related definitions:
  24.  
  25.   TTYDRIVER='-DUSE_TERMIO'      Use <termio.h> instead of <sgtty.h>.
  26.   TTYDRIVER='-DUSE_SGTTY'       Use <sgtty.h> instead of <termio.h>.
  27.   FLAGS='-U__STDC__'            Your system is Apollo Domain/OS.
  28.   FLAGS='-DWINS'                Your system is SysV with WINS.
  29.   LIBS='-lnet -lnsl_s'          Your system is SysV with WINS.
  30.   LIBS='-lsocket -linet -lnsl'  Your system is dynix/ptx.
  31.   RANDOM='-DRANDOM=random'      Your system has random() but Build couldn't
  32.                                 find it.
  33.  
  34.  
  35. File Locations
  36. --------------
  37.  
  38. If you do not explicitly define the file locations, TF will try to
  39. install them in these places:  /usr/local/bin and /usr/local/lib,
  40. if you have write permission;  $HOME/bin and $HOME/lib, if they
  41. exist; $HOME otherwise.  The man page is not installed by default.
  42. To change the location of a file, define the appropriate variable
  43. in Config with a full path name.
  44.  
  45. IMPORTANT:  If you move or change the name of the macro library or
  46. helpfile after installing, you must edit the TFLIBRARY or HELPFILE
  47. line in Config, and run Build again.
  48.  
  49. TF assumes your system keeps incoming mail in a central spool
  50. directory.  If your system keeps it in the recipient's home directory
  51. instead, find the section near the top of tf.library that describes
  52. this, and follow the instructions there.  Build will still complain
  53. that it can't find your mail directory; you can ignore it.
  54.  
  55.  
  56. Public Installation
  57. -------------------
  58.  
  59. If you have write permission in /usr/local/bin and /usr/local/lib,
  60. TinyFugue will be installed there.  You can change the locations
  61. by editing Config as described above.  Running Build will then put
  62. all files in their proper location with the proper permissions.
  63.  
  64. Some features of TF can be disabled for secure public installation, by
  65. uncommenting one or more of these RESTRICT lines in Config:
  66.  
  67.     RESTRICT_SHELL   Prevents all access to shell or external commands.
  68.                      Disables TF builtins "/sh" and "/quote !", and
  69.                      uncompression during /load and /help.
  70.  
  71.     RESTRICT_FILE    Prevents reading and writing of files.  Disables
  72.                      TF builtins "/load", "/save", "/saveworld", "/log",
  73.                      and "/quote '", and sockmload feature.  ("/load"
  74.                      is still allowed when reading initialization files.)
  75.  
  76.     RESTRICT_WORLD   Disallows all connections except those defined in
  77.                      the library file.  TF builtins /addworld and the
  78.                      "/world <host> <port>" semantics are disabled after
  79.                      the library is read at startup.
  80.  
  81.  
  82. Modifications
  83. -------------
  84.  
  85. If you make any modifications to the source (other than the Makefile),
  86. please add your name or other identification to the version[] variable
  87. in main.c (primarily to avoid confusion).  I ask that any redistributions
  88. give proper credit to the orginal author(s), and tell where to find the
  89. original source.
  90.  
  91.  
  92. Terminal Handling
  93. -----------------
  94.  
  95. Build will compile tf with the termcap library by default.  If your
  96. termcap library is buggy, you have two alternatives:
  97.  
  98. 1. Set TERMINAL="" in the Config file.
  99.    This will disable all but very basic screen functions.  Visual
  100.    mode will not be available.
  101.  
  102. 2. Set TERMINAL="-DHARDCODE" in the Config file.
  103.    TF will emulate a 25x80 VT-100 or ANSI terminal.  I recommend
  104.    that you check the attributes_on() and attributes_off() functions
  105.    inside the HARDCODE code block of termcap functions to make sure
  106.    they do what you want for your particular terminal emulation.
  107.  
  108. If you are not using a VT-100 or ANSI terminal, you can still use
  109. -DHARDCODE if you edit the terminal control sequences in output.c.
  110. Two things to note:  If your terminal type uses (0,0) as the upper
  111. left corner, decrement the x and y arguments in the sprintf() call
  112. in xy();  and, if your terminal can not set the scroll area, in the
  113. HARDCODE code block in init_term() set have_scroll=0 instead of 1.
  114.  
  115.  
  116. Nonblocking Connections
  117. -----------------------
  118.  
  119. On some systems, TF can be compiled to perform nonblocking connections
  120. to worlds.  That is, if a new /world command does not complete
  121. right away because of net lag, TF will continue trying in the
  122. background, allowing you to do other things while you wait.  It
  123. does this by running the connect() in a child process.  Nonblocking
  124. connect can be very nice on fast forking systems, but on slower
  125. machines can be annoying.  To install it, you must define TFCONNECT
  126. as the full path of the connection server (/usr/local/bin/tf.connect
  127. is recomended), and in the Config file set CONNECT to one of these
  128. values:
  129.  
  130.     CONNECT_SVR4       For SVr4 or similar systems which support I_SENDFD
  131.                        and I_RECVFD ioctl() calls (but not SVr3).
  132.  
  133.     CONNECT_BSD        For 4.3 BSD or later, or similar systems (including
  134.                        SunOS and OSF).   Will not work on 4.2 BSD.
  135.  
  136.  
  137. Miscellaneous
  138. -------------
  139.  
  140. If you want to be able to specify multiple-word arguments using " and '
  141. quotes (for world fields and macro arguments), add -DQUOTED_ARGS to
  142. the FLAGS line.
  143.  
  144. If you don't want TF to catch coredumps, add -DNO_COREHANDLERS to the
  145. FLAGS line.
  146.  
  147. If you are short on disk space, you can reduce the executable size by
  148. using "strip tf" after compiling, and you can compress the helpfile if
  149. you set COMPRESS_SUFFIX and COMPRESS_READ in tf.library.
  150.  
  151.  
  152. Last Resort
  153. -----------
  154.  
  155. If you think TF won't compile because of a bug or incompatibility with your
  156. system, you can email the author at hawkeye@glia.biostr.washington.edu.
  157. Please include the address of the system on which you are trying to
  158. compile, and the type of system it is, if you know.  Also include the file
  159. "Build.log", generated by Build.  Don't forget to put a subject line on
  160. the email.
  161.  
  162.